Skip to content

cmd/loop: normalize numeric replay time zones#1162

Merged
starius merged 1 commit into
lightninglabs:masterfrom
starius:fix-cli-tests
Jul 2, 2026
Merged

cmd/loop: normalize numeric replay time zones#1162
starius merged 1 commit into
lightninglabs:masterfrom
starius:fix-cli-tests

Conversation

@starius

@starius starius commented Jul 2, 2026

Copy link
Copy Markdown
Collaborator

Recorded session replay already normalizes timestamps before comparing CLI output, but the time.String timestamp regex only matched alphabetic zone names like UTC and EST. Some systems render the same offset with a numeric zone name, for example -0300 -03, which left the publication deadline unnormalized and caused fixture comparisons to fail.

Match numeric zone names as well, and parse the timestamp using the explicit numeric offset instead of the display zone name. Add a regression test covering RFC3339, alphabetic time.String zones, and numeric time.String zones.

Pull Request Checklist

  • Update release_notes.md if your PR contains major features, breaking changes or bugfixes

@gemini-code-assist

Copy link
Copy Markdown

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request improves the robustness of session replay timestamp normalization. By updating the regex matching and parsing logic to correctly handle numeric time zone offsets, it prevents fixture comparison failures that occurred on systems where timestamps are rendered with numeric rather than alphabetic zone names.

Highlights

  • Regex Update: Updated the timestamp regex to support both alphabetic and numeric time zone formats.
  • Timestamp Normalization: Modified the normalization logic to parse timestamps using explicit numeric offsets, ensuring consistency across different system time zone representations.
  • Regression Testing: Added a new test suite to verify timestamp normalization across RFC3339, alphabetic, and numeric time zone formats.
New Features

🧠 You can now enable Memory (public preview) to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize the Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counterproductive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the timestamp normalization logic in session_replay_test.go to support numeric time zone offsets in addition to alphabetic time zones. It updates the regular expression for matching timestamps, adjusts the parsing logic to strip the zone name dynamically, and introduces a new unit test suite TestNormalizeTimestamps to verify these changes. I have no feedback to provide as the implementation is clean and well-tested.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Recorded session replay already normalizes timestamps before
comparing CLI output, but the time.String timestamp regex only
matched alphabetic zone names like UTC and EST. Some systems
render the same offset with a numeric zone name, for example
-0300 -03, which left the publication deadline unnormalized
and caused fixture comparisons to fail.

Match numeric zone names as well, and parse the timestamp using
the explicit numeric offset instead of the display zone name. Add a
regression test covering RFC3339, alphabetic time.String zones, and
numeric time.String zones.
@starius starius marked this pull request as ready for review July 2, 2026 07:50

@hieblmi hieblmi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@starius starius merged commit eea3f96 into lightninglabs:master Jul 2, 2026
18 of 19 checks passed
@starius starius deleted the fix-cli-tests branch July 2, 2026 14:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants